In recent years, various information processing devices such as, for example, personal computers (PCs), large-scale computers, servers, and other communication equipment have been connected to communication networks such as the Internet in order to transfer content such as, audio data, or various programs etc., or transfer various processed data between each item of network-connected equipment. The type of content exchanged over a network is shifting from text and still images etc. to multimedia content such as moving pictures and audio, with the volume of the content also advancing remarkably.
Moreover, in recent years, Peer-to-Peer (P2P: Peer-to-Peer) technology has been developed and utilized as processing for direct communication between information processing devices. Rather than installing a server for performing processing in a centralized manner, a P2P network is a configuration for enabling various equipment such as, for example, PCs, mobile terminals, PDAs, mobile telephones, disc devices taken as storage having functions enabling communication processing or being connected to communication equipment, or printers etc. that are information processing devices taken as resources possessed by each network client to communicate via a network by enabling the resources possessed by each network client to be shared.
The technology used in APPN (Advanced Peer to Peer Networking) put forward by IBM Corporation (USA) is considered the first appearance of the Peer-to-Peer (P2P: Peer-to-Peer) network technology. By using this network, it is no longer necessary to install immense distribution servers required in the case of distributing content over a client-server network as in the related art, and content distributed across resources possessed by each network client can be utilized by a large number of users so as to enable storage and distribution of a large capacity of content.
There are two types of Peer-to-Peer (P2P: Peer-to-Peer) networks, Pure Peer-to-Peer networks, and Hybrid Peer-to-Peer networks.
A Pure Peer-to-Peer network is a form of network where each configuration element (Peer) of the system possesses equal functions and roles, and carry out communication equally. Gnutella can be given as a typical service employing this approach. A Hybrid Peer-to-Peer network, in addition to a Pure Peer-to-Peer network, is a form of network employing a control server in order to make interaction between each configuration element (Peer) of a system smooth. Napster can be given as a typical service employing this approach.
In a Hybrid Peer-to-Peer method as typified by Napster, when a network-connected terminal is to acquire content, first, a search is made by a central server for content resources. The terminal then accesses a node (another network-connected terminal) in possession of a resource based on the search information and acquires content. In this method, it is necessary to register resource information for all of the nodes on the central server, and this has the drawback that the search is concentrated on a central server.
A method has therefore been proposed to execute processing such as resource searches etc. in a manner distributed across a plurality of devices. This distributed processing method is managed by a method such as arranging devices determining processing execution in a tree relationship etc. so that processing such as resource searching etc. is executed distributed over a plurality of devices based on management information. However, with this method, when the number of devices executing the processing becomes large, such as a few hundred, the amount of information for managing the tree configuration increases, the number of processing commands for transmitting execution commands to the plurality of processing devices increases, and tree integrity may be compromised. Further there is also a problem that processing delays occur because determination processing by a plurality of processing execution determination devices is required.
In order to compensate for this shortcoming, a method is provided where all commands are sent to all network-connected nodes, with a determination then being made at each node as to whether to execute the received processing command or not. This is a Pure Peer-to-Peer method typified by Gnutella. This method is configured differently to the Hybrid Peer-to-Peer method in that there is no central server for executing resource search processing, but rather the configuration is such that search requests are transmitted and received and resource searches executed directly between each node, with processing requests for transmission of content etc. then being made to hit terminals.
With Pure Peer-to-Peer methods typified by Gnutella also, a configuration where searches can be carried out for all or as large a number of the nodes as possible by using routing such as tree configuration and network configuration etc. in the transfer of search commands is effective. However, with this method, a load is put upon the transmission path as a result of executing command transfer processing of processing commands that are not executed at an own node.
For example, complex routing management is required in order to search all network-connected nodes to enable processing requests to reach all nodes. On the other hand, when best effort method node searching is executed, it cannot be guaranteed that commands will be transmitted to all nodes, and there may also be cases where the necessary resources cannot be found. Further, the network may become congested when communication for node searches occurs frequently.